//
// Created by Administrator on 2020-2-12.
//

#include "CommendLine.h"

// 用于验证的函数，密码正常才允许使用
int Login(){
    puts("请登录后使用本系统前");
    printf("请输入口令");
    for (int i = 0; i < LOGIN_NUM; ++i) {
        char pw[12];
        scanf("%s", pw);
        if (strcmp(pw, PW) == 0){
            puts("密码正确");
            system("pause");
            return 1;
        } else {
            if (i < 2)
                printf("密码错误，请重新输入");
            else
                printf("输入错误三次，退出程序");
        }
    }
    exit(0);
}

// 用于在命令行里展示菜单
void Menu()
{
    system("cls");
    puts("--------------------------------------------------------------");
    puts("-------------------- 欢迎使用图书管理系统 --------------------");
    puts("-------------------- 1、添加一个图书信息记录  ----------------");
    puts("-------------------- 2、查看一个图书信息记录  ----------------");
    puts("-------------------- 3、修改一个图书信息记录  ----------------");
    puts("-------------------- 4、删除一个图书信息记录  ----------------");
    puts("-------------------- 5、对所有图书信息进行输出  --------------");
    puts("-------------------- 6、按页码对图书信息进行输出  -------------");
    puts("-------------------- 7、按图书信息进行排序  ------------------");
    puts("-------------------- 8、保存所有图书信息到本地 ---------------");
    puts("-------------------- 9、加载本地储存的图书信息 ---------------");
    puts("-------------------- 10、保存图书信息并退出 -------------------");
    puts("-------------------- 11、不保存图书信息并退出 ----------------");
    puts("--------------------------------------------------------------");
    printf("图书管理系统 > ");
    fflush(stdout);
}

void ctrl(bookList * context){
    for (;;) {
        fflush(stdin);
        Menu();
        int op = GetNum();
        if (op == 1){
            Create(context);
        } else if (op == 2){
            Retrieve(context);
            system("pause");
        } else if (op == 3){
            Update(context);
            system("pause");
        } else if (op == 4){
            Delete(context);
            system("pause");
        } else if (op == 5){
            OutputAll(context);
            system("pause");
        } else if (op == 6){
            OutputByPage(context);
        } else if (op == 7) {
            sort(context);
        } else if (op == 8){
            save(context);
            system("pause");
        } else if (op == 9){
            load(context);
            system("pause");
        } else if (op == 10){
            save(context);
            system("pause");
            return;
        } else if (op == 11){
            return;
        } else{
            puts("输入错误");
            system("pause");
        }
    }

}